package com.framework.common.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @author 龘鵺
 * @version 1.0
 * @className com.framework.common.annotation
 * @description 查询注解处理类
 * @datetime 2022-01-09 11:11:11
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE, ElementType.METHOD})
public @interface QueryTarget {
    /**
     * ElementType.TYPE：能修饰类、接口或枚举类型
     * ElementType.FIELD：能修饰成员变量
     * ElementType.METHOD：能修饰方法
     * ElementType.PARAMETER：能修饰参数
     * ElementType.CONSTRUCTOR：能修饰构造器
     * ElementType.LOCAL_VARIABLE：能修饰局部变量
     * ElementType.ANNOTATION_TYPE：能修饰注解
     * ElementType.PACKAGE：能修饰包
     * ElementType.TYPE_PARAMETER：标明注解能够用于类型参数声明
     * ElementType.TYPE_USE：类型使用声明
     */

    //是否启用默认排序 ture 使用 QueryParam.isDefaul t=true的字段当默认排序， false不使用 QueryParam.isDefault 字段的默认排序
    public boolean isDefault() default true;
}
